using System.Runtime.Serialization;
using System;
using RestAPICore;
using System.Linq;
using System.Collections.Generic;
using System.Threading.Tasks;
using System.Threading;
using System.IO;
using System.Collections.ObjectModel;
using System.ComponentModel;
namespace MyContract
{


				

	/// <summary>
	/// </summary>
	public class JsonTestGetIncludeDateTimeFieldRequest : GetRequest
	{
		public JsonTestGetIncludeDateTimeFieldRequest()
		{
		}

		/// <summary>
		/// </summary>
		public string Year
		{ 
			get { return RequestData.QueryStringValues.ContainsKey("year") ? RequestData.QueryStringValues["year"].FirstOrDefault() : null; }
			set
			{
				var target = RequestData.QueryStringValues.ContainsKey("year") ? RequestData.QueryStringValues["year"] : new List<string> () ;
				target.Clear();
				target.Add(value);
				RequestData.QueryStringValues["year"] = target;
			}
		}
		/// <summary>
		/// </summary>
		public string Month
		{ 
			get { return RequestData.QueryStringValues.ContainsKey("month") ? RequestData.QueryStringValues["month"].FirstOrDefault() : null; }
			set
			{
				var target = RequestData.QueryStringValues.ContainsKey("month") ? RequestData.QueryStringValues["month"] : new List<string> () ;
				target.Clear();
				target.Add(value);
				RequestData.QueryStringValues["month"] = target;
			}
		}
		/// <summary>
		/// </summary>
		public string Day
		{ 
			get { return RequestData.QueryStringValues.ContainsKey("day") ? RequestData.QueryStringValues["day"].FirstOrDefault() : null; }
			set
			{
				var target = RequestData.QueryStringValues.ContainsKey("day") ? RequestData.QueryStringValues["day"] : new List<string> () ;
				target.Clear();
				target.Add(value);
				RequestData.QueryStringValues["day"] = target;
			}
		}
	}

				
								

	/// <summary>
	/// asdasdijpaisdj
	/// asdasd
	/// 
	/// </summary>
	public class JsonTestTestFileRequest : MultiPartPostRequest
	{
		public JsonTestTestFileRequest()
		{
		}

		/// <summary>
		/// </summary>
		public string Id
		{ 
			get { return RequestData.UrlTemplateValues.ContainsKey("id") ? RequestData.UrlTemplateValues["id"] : null; }
			set
			{
				RequestData.UrlTemplateValues["id"] = value;
			}
		}
		/// <summary>
		/// </summary>
		public string Content
		{ 
			get { return RequestData.UrlTemplateValues.ContainsKey("content") ? RequestData.UrlTemplateValues["content"] : null; }
			set
			{
				RequestData.UrlTemplateValues["content"] = value;
			}
		}
		/// <summary>
		/// asdasdijpaisdj
		/// asdasdsa
		/// asdasd
		/// 
		/// </summary>
		public string Id_1
		{ 
			get { return RequestData.PostFieldValues.ContainsKey("id") ? RequestData.PostFieldValues["id"].FirstOrDefault() : null; }
			set
			{
				var target = RequestData.PostFieldValues.ContainsKey("id") ? RequestData.PostFieldValues["id"] : new List<string> () ;
				target.Clear();
				target.Add(value);
				RequestData.PostFieldValues["id"] = target;
			}
		}
		/// <summary>
		/// </summary>
		public string Desc
		{ 
			get { return RequestData.PostFieldValues.ContainsKey("desc") ? RequestData.PostFieldValues["desc"].FirstOrDefault() : null; }
			set
			{
				var target = RequestData.PostFieldValues.ContainsKey("desc") ? RequestData.PostFieldValues["desc"] : new List<string> () ;
				target.Clear();
				target.Add(value);
				RequestData.PostFieldValues["desc"] = target;
			}
		}
		/// <summary>
		/// </summary>
		public FileUploadInfo File
		{ 
			get { return RequestData.UploadFiles.ContainsKey("file") ? RequestData.UploadFiles["file"] : null; }
			set
			{
				RequestData.UploadFiles["file"] = value;
			}
		}
		/// <summary>
		/// </summary>
		public FileUploadInfo File2
		{ 
			get { return RequestData.UploadFiles.ContainsKey("file2") ? RequestData.UploadFiles["file2"] : null; }
			set
			{
				RequestData.UploadFiles["file2"] = value;
			}
		}
	}

				
								

	/// <summary>
	/// </summary>
	public class JsonTestTestGetRequest : GetRequest
	{
		public JsonTestTestGetRequest()
		{
		}

		/// <summary>
		/// </summary>
		public string Str
		{ 
			get { return RequestData.QueryStringValues.ContainsKey("str") ? RequestData.QueryStringValues["str"].FirstOrDefault() : null; }
			set
			{
				var target = RequestData.QueryStringValues.ContainsKey("str") ? RequestData.QueryStringValues["str"] : new List<string> () ;
				target.Clear();
				target.Add(value);
				RequestData.QueryStringValues["str"] = target;
			}
		}
	}

				
								

	/// <summary>
	/// </summary>
	public class JsonTestTestNumRequest : PostRequest
	{
		public JsonTestTestNumRequest()
		{
		}

		/// <summary>
		/// </summary>
		public string Str
		{ 
			get { return RequestData.PostFieldValues.ContainsKey("str") ? RequestData.PostFieldValues["str"].FirstOrDefault() : null; }
			set
			{
				var target = RequestData.PostFieldValues.ContainsKey("str") ? RequestData.PostFieldValues["str"] : new List<string> () ;
				target.Clear();
				target.Add(value);
				RequestData.PostFieldValues["str"] = target;
			}
		}
	}

				
								

	/// <summary>
	/// </summary>
	public class JsonTestTestPostRequest : PostRequest
	{
		public JsonTestTestPostRequest()
		{
		}

		/// <summary>
		/// </summary>
		public string Str
		{ 
			get { return RequestData.PostFieldValues.ContainsKey("str") ? RequestData.PostFieldValues["str"].FirstOrDefault() : null; }
			set
			{
				var target = RequestData.PostFieldValues.ContainsKey("str") ? RequestData.PostFieldValues["str"] : new List<string> () ;
				target.Clear();
				target.Add(value);
				RequestData.PostFieldValues["str"] = target;
			}
		}
	}

				
					

}
